t A style, as understood by one of ordinary skill in the art, is the manner in which written material is presented, usually in a particular publication or by a particular publisher. Styles are used in, for example, MICROSOFT WORD and MICROSOFT VISIO to define the way in which text, lines and/or fill is presented. The style definitions enforce certain characteristics of the text, lines and/or fill in order to provide a uniform appearance throughout a document.
One area where styles have not been implemented in a general sense in user interface (UI) design, where it would be desirable to define, enforce and maintain definitions of the UI design at both design time and runtime. There have been attempts at this goal, such as CSS (Cascading Style Sheets) and XSL (Extensible Style Language) which are used in web page design. However, both of these methods are notoriously complex and hard to understand. More importantly it has proven very difficult to write software tools that utilize them efficiently, particularly WYSIWYG (What You See Is What You Get) tools that allow direct manipulation and understanding of the design.
One problem is how software design time tools can define UI styles, while runtime software enforces these rules and allows them to change without breaking the functionality of the interface. Specifically, a styling mechanism should be: general and applicable to all aspects of UI design, able to manipulate through graphics and development tools, and simple and familiar so that UI designers can easily master it. However, no conventional style mechanism provides these features.
Accordingly, there is a need for a styling mechanism that provides the functionalities noted above. The present invention provides such a solution.